package org.upm;

import java.util.Date;

/**
 * Clase que gestiona los anuncios del sistema.
 * Una mejora sería que la clase obtuviera estos anuncios a partir de una base de datos.
 * 
 * @author Jonathan Gonzalez
 * @version 09/03/2009
 */
public class GeneradorAnuncios {
	/**
	 * Constructor sin parámetros de la clase.
	 */
	public GeneradorAnuncios(){
		
	}
	
	/**
	 * Método que devuelve los anuncios que pueden ser servidor por el sistema
	 * 
	 * @return Object[] anuncios - Anuncios del sistema
	 * @throws Exception
	 */
	@SuppressWarnings("deprecation")
	public Object[] dameAnuncios() throws Exception{
		SimpleDate fechaMovistar = new SimpleDate("01/01/2011");
		SimpleDate fechaTuenti = new SimpleDate("03/03/2011");
		SimpleDate fechaPartido = new SimpleDate("03/07/2011");
		
		//Introducimos la fecha Actual
		Date date = new Date();
		String dia = Integer.toString(date.getDate());
		if (dia.length() == 1){
			dia = "0" + dia;
		}
		String mes = Integer.toString(date.getMonth()+1);
		if (mes.length() == 1){
			mes = "0" + mes;
		}
		String ano = Integer.toString(date.getYear()+1900);
		String fechaActual = dia + "/" + mes + "/" + ano;
		        		  
		SimpleDate hoy = new SimpleDate(fechaActual);
		
		Anuncio a1 = new Anuncio("Mi_Favorito", "Movistar", "Hombre", 18, 
				fechaMovistar, "Spain", "General", 100000, 0, hoy, "Razonable");
		Anuncio a2 = new Anuncio("Descuento_Tuenti", "Tuenti", "Ambos", 0,
				fechaTuenti, "Spain", "General", 500, 0, hoy, "Razonable");
		Anuncio a3 = new Anuncio("ChampionsLeague", "Real Madrid", "Hombre", 0,
				fechaPartido, "Madrid", "Futbol", 1000, 0, hoy, "Elevado");
		Anuncio a4 = new Anuncio("Cine", "Kinepolis", "Ambos", 0,
				fechaPartido, "Madrid", "Descuento", 1000, 0, hoy, "Razonable");
		Anuncio a5 = new Anuncio("CantoDelLoco", "CD", "Ambos", 0,
				fechaPartido, "Madrid", "Concierto", 1000, 0, hoy, "Razonable");
		Anuncio a6 = new Anuncio("HarryPotter", "Libro", "Ambos", 0,
				fechaPartido, "Spain", "Libro", 1000, 0, hoy, "Razonable");
		Object[] anuncios = { a1, a2, a3, a4, a5, a6};
		
		return anuncios;
	}
	
	/**
	 * Método que devuelve el anuncio por decfecto del sistema
	 * 
	 * @return - Anuncio por defecto a reproducir por el sistema
	 * @throws Exception
	 */
	@SuppressWarnings("deprecation")
	public Anuncio dameAnuncioDefecto() throws Exception{
		SimpleDate fechaPartido = new SimpleDate("03/07/2010");
		//Introducimos la fecha Actual
		Date date = new Date();
		String dia = Integer.toString(date.getDate());
		if (dia.length() == 1){
			dia = "0" + dia;
		}
		String mes = Integer.toString(date.getMonth()+1);
		if (mes.length() == 1){
			mes = "0" + mes;
		}
		String ano = Integer.toString(date.getYear()+1900);
		String fechaActual = dia + "/" + mes + "/" + ano;
		        		  
		SimpleDate hoy = new SimpleDate(fechaActual);
		Anuncio defecto = new Anuncio("", "", "", 0,
				fechaPartido, "", "", 0, -1000000, hoy, "Consumo");
		return defecto;
	}

}
